package jpa.entitys.promis.common;

import java.io.Serializable;

import javax.persistence.*;

import java.math.BigDecimal;
import java.util.Date;


/**
 * The persistent class for the PMS_PAYMENT_RECEIVED_DETAILS database table.
 * 
 */
@Entity
@Table(name="PMS_PAYMENT_RECEIVED_DETAILS")
@NamedQueries({
    @NamedQuery(name = "PmsPaymentReceivedDetail.findAll", query = " SELECT c FROM PmsPaymentReceivedDetail c "),
    @NamedQuery(name = "PmsPaymentReceivedDetail.findById", query = " SELECT c FROM PmsPaymentReceivedDetail c WHERE c.id = :Id "),
    @NamedQuery(name = "PmsPaymentReceivedDetail.findByStatus", query = " SELECT c FROM PmsPaymentReceivedDetail c WHERE c.syncIssync = 'N' And c.status = :status"),
})
public class PmsPaymentReceivedDetail extends jpa.entitys.common.CommonEntity implements Serializable {
	private static final long serialVersionUID = 1L;

	@EmbeddedId
	private PmsPaymentReceivedDetailPK id;
	
	@Override public String toString() { return org.apache.commons.lang.builder.ToStringBuilder.reflectionToString(this);}

	@Column(name="ADDRESS_CODE")
	private String addressCode;

	@Column(name="ADJUST_AMOUNT")
	private BigDecimal adjustAmount;

	@Column(name="BANK_BRANCH")
	private String bankBranch;

	@Column(name="BANK_CARD_READER")
	private String bankCardReader;

	@Column(name="BANK_CHARGE")
	private BigDecimal bankCharge;

	@Column(name="BANK_CHARGE_RATE")
	private BigDecimal bankChargeRate;

	@Column(name="BANK_CODE")
	private String bankCode;

	@Temporal(TemporalType.TIMESTAMP)
	@Column(name="BANK_DATE")
	private Date bankDate;

	@Column(name="BANK_RATE")
	private BigDecimal bankRate;

	private String branch;

	@Column(name="BRANCH_CODE")
	private String branchCode;

	@Column(name="CHEQUE_AMOUNT")
	private BigDecimal chequeAmount;

	@Temporal(TemporalType.TIMESTAMP)
	@Column(name="CHEQUE_DUE_DATE")
	private Date chequeDueDate;

	@Column(name="CHEQUE_ISSUING_BANK")
	private String chequeIssuingBank;

	@Column(name="CHEQUE_NUMBER")
	private String chequeNumber;

	@Column(name="CHEQUE_PAYEE_AC")
	private String chequePayeeAc;

	@Column(name="CHEQUE_PAYER_AC_NO")
	private String chequePayerAcNo;

	@Column(name="CREATED_BY")
	private String createdBy;

	@Temporal(TemporalType.TIMESTAMP)
	@Column(name="CREATED_ON")
	private Date createdOn;

	@Column(name="CREDIT_CARD_TYPE")
	private String creditCardType;

	private String currency;

	@Column(name="CUSTOMER_CODE")
	private String customerCode;

	@Column(name="DEDUCT_TYPE")
	private String deductType;

	@Column(name="EXCHANGE_RATE")
	private BigDecimal exchangeRate;

	@Column(name="FC_CHEQUE_AMOUNT")
	private BigDecimal fcChequeAmount;

	@Column(name="FC_CHEQUE_DETAILS")
	private String fcChequeDetails;

	@Column(name="LAST_UPD_BY")
	private String lastUpdBy;

	@Temporal(TemporalType.TIMESTAMP)
	@Column(name="LAST_UPD_ON")
	private Date lastUpdOn;

	@Column(name="PAYEE_NAME")
	private String payeeName;

	@Temporal(TemporalType.TIMESTAMP)
	@Column(name="PAYIN_DATE")
	private Date payinDate;

	@Column(name="PAYMENT_TYPE")
	private String paymentType;

	@Column(name="PERMANENT_RECEIPTS_ID")
	private String permanentReceiptsId;

	@Column(name="PMS_PAYMENT_RECEIVED_DET_ID")
	private String pmsPaymentReceivedDetId;

	private String project;

	@Column(name="PROJECT_REF")
	private String projectRef;

	@Column(name="RECEIVED_TYPE")
	private String receivedType;

	private String remarks;

	private String status;

	@Column(name="SYNC_CREATEDBY")
	private String syncCreatedby;

	@Temporal(TemporalType.TIMESTAMP)
	@Column(name="SYNC_CREATEDON")
	private Date syncCreatedon;

	@Column(name="SYNC_EXTERNAL_REF_KEY")
	private String syncExternalRefKey;

	@Column(name="SYNC_EXTERNAL_REF_NO")
	private String syncExternalRefNo;

	@Column(name="SYNC_ISSTAGING")
	private String syncIsstaging;

	@Column(name="SYNC_ISSYNC")
	private String syncIssync;

	@Column(name="SYNC_UPDATEDBY")
	private String syncUpdatedby;

	@Temporal(TemporalType.TIMESTAMP)
	@Column(name="SYNC_UPDATEDON")
	private Date syncUpdatedon;

	@Column(name="TMP_CHEQUE_NUMBER")
	private BigDecimal tmpChequeNumber;

	@Column(name="TOTAL_CHEQUE_AMOUNT")
	private BigDecimal totalChequeAmount;

	@Temporal(TemporalType.TIMESTAMP)
	@Column(name="VOUCHER_DATE")
	private Date voucherDate;

	public PmsPaymentReceivedDetail() {
	}

	public PmsPaymentReceivedDetailPK getId() {
		return this.id;
	}

	public void setId(PmsPaymentReceivedDetailPK id) {
		this.id = id;
	}

	public String getAddressCode() {
		return this.addressCode;
	}

	public void setAddressCode(String addressCode) {
		this.addressCode = addressCode;
	}

	public BigDecimal getAdjustAmount() {
		return this.adjustAmount;
	}

	public void setAdjustAmount(BigDecimal adjustAmount) {
		this.adjustAmount = adjustAmount;
	}

	public String getBankBranch() {
		return this.bankBranch;
	}

	public void setBankBranch(String bankBranch) {
		this.bankBranch = bankBranch;
	}

	public String getBankCardReader() {
		return this.bankCardReader;
	}

	public void setBankCardReader(String bankCardReader) {
		this.bankCardReader = bankCardReader;
	}

	public BigDecimal getBankCharge() {
		return this.bankCharge;
	}

	public void setBankCharge(BigDecimal bankCharge) {
		this.bankCharge = bankCharge;
	}

	public BigDecimal getBankChargeRate() {
		return this.bankChargeRate;
	}

	public void setBankChargeRate(BigDecimal bankChargeRate) {
		this.bankChargeRate = bankChargeRate;
	}

	public String getBankCode() {
		return this.bankCode;
	}

	public void setBankCode(String bankCode) {
		this.bankCode = bankCode;
	}

	public Date getBankDate() {
		return this.bankDate;
	}

	public void setBankDate(Date bankDate) {
		this.bankDate = bankDate;
	}

	public BigDecimal getBankRate() {
		return this.bankRate;
	}

	public void setBankRate(BigDecimal bankRate) {
		this.bankRate = bankRate;
	}

	public String getBranch() {
		return this.branch;
	}

	public void setBranch(String branch) {
		this.branch = branch;
	}

	public String getBranchCode() {
		return this.branchCode;
	}

	public void setBranchCode(String branchCode) {
		this.branchCode = branchCode;
	}

	public BigDecimal getChequeAmount() {
		return this.chequeAmount;
	}

	public void setChequeAmount(BigDecimal chequeAmount) {
		this.chequeAmount = chequeAmount;
	}

	public Date getChequeDueDate() {
		return this.chequeDueDate;
	}

	public void setChequeDueDate(Date chequeDueDate) {
		this.chequeDueDate = chequeDueDate;
	}

	public String getChequeIssuingBank() {
		return this.chequeIssuingBank;
	}

	public void setChequeIssuingBank(String chequeIssuingBank) {
		this.chequeIssuingBank = chequeIssuingBank;
	}

	public String getChequeNumber() {
		return this.chequeNumber;
	}

	public void setChequeNumber(String chequeNumber) {
		this.chequeNumber = chequeNumber;
	}

	public String getChequePayeeAc() {
		return this.chequePayeeAc;
	}

	public void setChequePayeeAc(String chequePayeeAc) {
		this.chequePayeeAc = chequePayeeAc;
	}

	public String getChequePayerAcNo() {
		return this.chequePayerAcNo;
	}

	public void setChequePayerAcNo(String chequePayerAcNo) {
		this.chequePayerAcNo = chequePayerAcNo;
	}

	public String getCreatedBy() {
		return this.createdBy;
	}

	public void setCreatedBy(String createdBy) {
		this.createdBy = createdBy;
	}

	public Date getCreatedOn() {
		return this.createdOn;
	}

	public void setCreatedOn(Date createdOn) {
		this.createdOn = createdOn;
	}

	public String getCreditCardType() {
		return this.creditCardType;
	}

	public void setCreditCardType(String creditCardType) {
		this.creditCardType = creditCardType;
	}

	public String getCurrency() {
		return this.currency;
	}

	public void setCurrency(String currency) {
		this.currency = currency;
	}

	public String getCustomerCode() {
		return this.customerCode;
	}

	public void setCustomerCode(String customerCode) {
		this.customerCode = customerCode;
	}

	public String getDeductType() {
		return this.deductType;
	}

	public void setDeductType(String deductType) {
		this.deductType = deductType;
	}

	public BigDecimal getExchangeRate() {
		return this.exchangeRate;
	}

	public void setExchangeRate(BigDecimal exchangeRate) {
		this.exchangeRate = exchangeRate;
	}

	public BigDecimal getFcChequeAmount() {
		return this.fcChequeAmount;
	}

	public void setFcChequeAmount(BigDecimal fcChequeAmount) {
		this.fcChequeAmount = fcChequeAmount;
	}

	public String getFcChequeDetails() {
		return this.fcChequeDetails;
	}

	public void setFcChequeDetails(String fcChequeDetails) {
		this.fcChequeDetails = fcChequeDetails;
	}

	public String getLastUpdBy() {
		return this.lastUpdBy;
	}

	public void setLastUpdBy(String lastUpdBy) {
		this.lastUpdBy = lastUpdBy;
	}

	public Date getLastUpdOn() {
		return this.lastUpdOn;
	}

	public void setLastUpdOn(Date lastUpdOn) {
		this.lastUpdOn = lastUpdOn;
	}

	public String getPayeeName() {
		return this.payeeName;
	}

	public void setPayeeName(String payeeName) {
		this.payeeName = payeeName;
	}

	public Date getPayinDate() {
		return this.payinDate;
	}

	public void setPayinDate(Date payinDate) {
		this.payinDate = payinDate;
	}

	public String getPaymentType() {
		return this.paymentType;
	}

	public void setPaymentType(String paymentType) {
		this.paymentType = paymentType;
	}

	public String getPermanentReceiptsId() {
		return this.permanentReceiptsId;
	}

	public void setPermanentReceiptsId(String permanentReceiptsId) {
		this.permanentReceiptsId = permanentReceiptsId;
	}

	public String getPmsPaymentReceivedDetId() {
		return this.pmsPaymentReceivedDetId;
	}

	public void setPmsPaymentReceivedDetId(String pmsPaymentReceivedDetId) {
		this.pmsPaymentReceivedDetId = pmsPaymentReceivedDetId;
	}

	public String getProject() {
		return this.project;
	}

	public void setProject(String project) {
		this.project = project;
	}

	public String getProjectRef() {
		return this.projectRef;
	}

	public void setProjectRef(String projectRef) {
		this.projectRef = projectRef;
	}

	public String getReceivedType() {
		return this.receivedType;
	}

	public void setReceivedType(String receivedType) {
		this.receivedType = receivedType;
	}

	public String getRemarks() {
		return this.remarks;
	}

	public void setRemarks(String remarks) {
		this.remarks = remarks;
	}

	public String getStatus() {
		return this.status;
	}

	public void setStatus(String status) {
		this.status = status;
	}

	public String getSyncCreatedby() {
		return this.syncCreatedby;
	}

	public void setSyncCreatedby(String syncCreatedby) {
		this.syncCreatedby = syncCreatedby;
	}

	public Date getSyncCreatedon() {
		return this.syncCreatedon;
	}

	public void setSyncCreatedon(Date syncCreatedon) {
		this.syncCreatedon = syncCreatedon;
	}

	public String getSyncExternalRefKey() {
		return this.syncExternalRefKey;
	}

	public void setSyncExternalRefKey(String syncExternalRefKey) {
		this.syncExternalRefKey = syncExternalRefKey;
	}

	public String getSyncExternalRefNo() {
		return this.syncExternalRefNo;
	}

	public void setSyncExternalRefNo(String syncExternalRefNo) {
		this.syncExternalRefNo = syncExternalRefNo;
	}

	public String getSyncIsstaging() {
		return this.syncIsstaging;
	}

	public void setSyncIsstaging(String syncIsstaging) {
		this.syncIsstaging = syncIsstaging;
	}

	public String getSyncIssync() {
		return this.syncIssync;
	}

	public void setSyncIssync(String syncIssync) {
		this.syncIssync = syncIssync;
	}

	public String getSyncUpdatedby() {
		return this.syncUpdatedby;
	}

	public void setSyncUpdatedby(String syncUpdatedby) {
		this.syncUpdatedby = syncUpdatedby;
	}

	public Date getSyncUpdatedon() {
		return this.syncUpdatedon;
	}

	public void setSyncUpdatedon(Date syncUpdatedon) {
		this.syncUpdatedon = syncUpdatedon;
	}

	public BigDecimal getTmpChequeNumber() {
		return this.tmpChequeNumber;
	}

	public void setTmpChequeNumber(BigDecimal tmpChequeNumber) {
		this.tmpChequeNumber = tmpChequeNumber;
	}

	public BigDecimal getTotalChequeAmount() {
		return this.totalChequeAmount;
	}

	public void setTotalChequeAmount(BigDecimal totalChequeAmount) {
		this.totalChequeAmount = totalChequeAmount;
	}

	public Date getVoucherDate() {
		return this.voucherDate;
	}

	public void setVoucherDate(Date voucherDate) {
		this.voucherDate = voucherDate;
	}

}